/*
 *	This file is part of Lounge-Cast.
 *
 *  Author:  	Markus Moormann
 *	E-mail:  	mmoorman@uni-osnabrueck.de
 *	Copyright:	University of Osnabrueck (Zentrum Virtuos)
 * 	Website:	www.uni-osnabrueck.de
 *	Date:		16.02.2011
 *
 *	Lounge-Cast is free software: you can redistribute it and/or modify
 *  it under the terms of the GNU General Public License as published by
 *  the Free Software Foundation, either version 3 of the License, or
 *  (at your option) any later version.
 *
 *	Lounge-Cast is distributed in the hope that it will be useful,
 *  but WITHOUT ANY WARRANTY; without even the implied warranty of
 *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 *  GNU General Public License for more details.
 *
 *  You should have received a copy of the GNU General Public License
 *  along with Lounge-Cast.  If not, see <http://www.gnu.org/licenses/>.
 */
package webservice.vo;

import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlRootElement;

/**
 * class representing a VideoVO
 *
 * @author Markus Moormann
 */
@XmlRootElement(name = "Video")
public class Video extends Media{

	/**
	 * the id of the media;
	 */
	@XmlElement(name = "mediaId")
	public String media_id;
	/**
	 * the URL pointing to the video
	 */
	@XmlElement(name = "url")
	public String url; 
	/**
	 * the URL pointing to subtitles file
	 */
	@XmlElement(name = "subtitles")
	public String subtitles;
	/**
	 * volume of the video
	 */
	@XmlElement(name = "volume")
	public double volume = 0;
	/**
	 * the starting point of the video
	 */
	@XmlElement(name = "inPoint")
	public double in_point;
	/**
	 * the ending point of the video
	 */
	@XmlElement(name = "outPoint")
	public double out_point;
	
	@XmlElement(name = "aspect_ratio")
	public String aspect_ratio;
	
	/**
	 * default constructor
	 */
	public Video(){}
	
	/**
	 * constructor
	 * 
	 * @param media a <code>MediaVO</code> containing all common information
	 * @param url the URL pointing to the video
	 * @param subtitles the URL pointing to subtitles file
	 * @param volume the volume(0...1)
	 * @param in_point the in point of the video (where to start the video)
	 * @param out_point the out point of the video( where to end the video)
	 */
	public Video(Media media,
				   String url,
				   String subtitles,
				   double volume,
				   double in_point,
				   double out_point,
				   String aspect_ratio) {
		this.media_id = media.media_id;
		this.type = media.type;
		this.title = media.title;
		this.valid_date = media.valid_date;
		this.newsticker = media.newsticker;
		this.duration = media.duration;
		this.reference = media.reference;
		
		this.url = url;
		this.subtitles = subtitles;
		this.volume = volume;
		this.in_point = in_point;
		this.out_point = out_point;
		this.aspect_ratio = aspect_ratio;
	}

}
